package org.jeecg.modules.yw.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.modules.yw.vo.OrderVo;
import org.jeecgframework.poi.excel.annotation.Excel;

import java.util.Date;
import java.util.List;

@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("view_order")
public class OrderView  {
    @ApiModelProperty(value = "主键ID")
    private String id;
    @Excel(name = "企业名称")
    @ApiModelProperty(value = "创建人")
    private String ownername;
    @ApiModelProperty(value = "订单")
    @Excel(name = "订单编号")
    private String orderno;
    @ApiModelProperty(value = "面积")
    @Excel(name = "面积")
    private Double mj;
    @ApiModelProperty(value = "金额")
    @Excel(name = "金额")
    private Double je;
    @ApiModelProperty(value = "订单状态")
    private Date yytime;
    private Date createtime;
    private String name;

    @TableField(exist = false)
    private String fileName;
    @TableField(exist = false)
    private String filePath;
    @TableField(exist = false)
    private Integer busiType;
    @TableField(exist = false)
    private Integer azbzType;
    @TableField(exist = false)
    private Integer shdjType;
    @TableField(exist = false)
    private String msgId;
    @ApiModelProperty(value = "是否有问题，0-没有 1-有")
    @TableField(exist = false)
    private String problem;
    @TableField(exist = false)
    private List<PaperInfo> paperInfoList;
    @ApiModelProperty(value = "联系人电话 ")
    @TableField(exist = false)
    private String ownerPhone; // 业务主方联系电话
    @ApiModelProperty(value = "业务主方联系地址 ")
    @TableField(exist = false)
    private String ownerAddress; // 业务联系人地址
    @ApiModelProperty(value = "是否需要含辅料 (1: 是 0：否) ")
    @TableField(exist = false)
    private Integer fl; // 是否需要含辅料 (1: 是 0：否)
    @ApiModelProperty(value = "是否需要现场改变洞口尺寸(1: 是 0：否)")
    @TableField(exist = false)
    private Integer cc;  // 是否需要现场改变洞口尺寸(1: 是 0：否)
    @ApiModelProperty(value = "改变洞口数量")
    @TableField(exist = false)
    private Integer ccNum;
    @ApiModelProperty(value = "旧拆窗拆除方式(1:需要 0:否)")
    @TableField(exist = false)
    private Integer ccfs;  // 旧拆窗拆除方式(1:需要 0:否)
    @ApiModelProperty(value = "拆除旧窗数量")
    @TableField(exist = false)
    private Integer ccfsNum;
    @ApiModelProperty(value = "具体拆除方式( 0: 无  1: 朔窗 2. 铝合金 3 工费拆除是 4 工程拆除否)")
    @TableField(exist = false)
    private Integer cclx; //  具体拆除方式( 0: 无  1: 朔窗 2. 铝合金 3 工费拆除是 4 工程拆除否)
    @ApiModelProperty(value = "是否含外挂纱窗 1是 0否")
    @TableField(exist = false)
    private Integer wgsc;
    @ApiModelProperty(value = "外挂纱窗数量")
    @TableField(exist = false)
    private Integer wgscNum;
    @ApiModelProperty(value = "产品搬运(1：电梯 2. 楼梯 3. 提升机 4 超大窗吊车卸车)")
    @TableField(exist = false)
    private String cpby; // 产品搬运(1：电梯 2. 楼梯 3. 提升机 4 超大窗吊车卸车)
    @ApiModelProperty(value = "运输车是否到楼下(1：是 0：否)")
    @TableField(exist = false)
    private Integer yscdlx; //  运输车是否到楼下(1：是 0：否)
    @ApiModelProperty(value = "施工环境（1：毛坯 0：已装修）")
    @TableField(exist = false)
    private Integer sghj; //  施工环境（1：毛坯 0：已装修）
    @ApiModelProperty(value = "是否加胶(1:是 0：否)")
    @TableField(exist = false)
    private Integer sfjj; // 是否加胶(1:是 0：否)
    @ApiModelProperty(value = "0：无 1. 内玻璃胶 2. 外玻璃胶 3. 内墙体胶    ")
    @TableField(exist = false)
    private String jjlx; //  0：无 1. 内玻璃胶 2. 外玻璃胶 3. 内墙体胶
    @ApiModelProperty(value = "打胶时间")
    @TableField(exist = false)
    private String djTime; // 打胶时间
    @TableField(exist = false)
    private String djFinishTime; // 打胶完成时间
    @TableField(exist = false)
    private String currentUserId; // 当前操作用户id
    @ApiModelProperty(value = "查损核数(1:相符 0：不相符) ")
    @TableField(exist = false)
    private Integer cshs; // 查损核数(1:相符 0：不相符)
    @ApiModelProperty(value ="查损核数描述")
    @TableField(exist = false)
    private String cshsContent;
    @ApiModelProperty(value = "洞口复测(1: 相符， 2 不相符)")
    @TableField(exist = false)
    private Integer dkfc; // 洞口复测(1: 相符， 2 不相符)
    @TableField(exist = false)
    @ApiModelProperty(value = "洞口复测描述")
    private String dkfcContent;
    @ApiModelProperty(value = "告知售后1 0. 无 1.打内墙胶2. 打外玻璃胶3. 打内玻璃胶 4. 安装执手  注：多选，逗号分割")
    @TableField(exist = false)
    private String gzsh1; // 告知售后1 0. 无 1.打内墙胶2. 打外玻璃胶3. 打内玻璃胶 4. 安装执手  注：多选，逗号分割
    @ApiModelProperty(value = "告知售后2 1. 上午 2. 下午 3. 全天 4. 需要与业主碰时间 ")
    @TableField(exist = false)
    private Integer gzsh2; // 告知售后2 1. 上午 2. 下午 3. 全天 4. 需要与业主碰时间
    @ApiModelProperty(value = "内外铝是否有划伤(1:是 0:否) ")
    @TableField(exist = false)
    private Integer nwlhs; // 内外铝是否有划伤(1:是 0:否)
    @ApiModelProperty(value = "木材是否有划伤(1:是 0:否)")
    @TableField(exist = false)
    private Integer mshs; // 木材是否有划伤(1:是 0:否)
    @ApiModelProperty(value = "玻璃是否有破损(1:是 0:否)")
    @TableField(exist = false)
    private Integer blps; // 玻璃是否有破损(1:是 0:否)
    @ApiModelProperty(value = "发泡胶是否污染木面或铝面(1: 是0 :否)")
    @TableField(exist = false)
    private Integer pjwr; // 发泡胶是否污染木面或铝面(1: 是0 :否)
    @ApiModelProperty(value = "开启扇是否开启灵活(1:是0：否)")
    @TableField(exist = false)
    private Integer kqsflw; // 开启扇是否开启灵活(1:是0：否)
    @ApiModelProperty(value = "执手扣盖是否齐全(1:是，0：否)")
    @TableField(exist = false)
    private Integer zskg;  // 执手扣盖是否齐全(1:是，0：否)
    @ApiModelProperty(value = "发泡胶水是否填充饱满(1:是 0：否)")
    @TableField(exist = false)
    private Integer fpbm; // 发泡胶水是否填充饱满(1:是 0：否)
    @ApiModelProperty(value = "发泡胶水是否填充饱满(1:是 0：否)")
    @TableField(exist = false)
    private Integer ljql; // 安装垃圾和包装物是否清理干净(1:是，0：否)
    @ApiModelProperty(value = "外墙胶(1: 是 0：否)")
    @TableField(exist = false)
    private Integer wjq; // 外墙胶(1: 是 0：否)
    @ApiModelProperty(value = "内胶墙(1: 是 0：否)")
    @TableField(exist = false)
    private Integer njq; // 内胶墙(1: 是 0：否);
    @ApiModelProperty(value = "外玻璃胶(1: 是，0：否)")
    @TableField(exist = false)
    private Integer wblj; // 外玻璃胶(1: 是，0：否)
    @ApiModelProperty(value = "内玻璃胶(1: 是，0：否)")
    @TableField(exist = false)
    private Integer nblj; // 内玻璃胶(1: 是，0：否)
    @TableField(exist = false)
    private Integer status; // 消息：0: 新建订单 1：安装班组待处理 2. 安装班组拒绝 3. 安装完成  4 .打胶售后待处理 5 打胶售后拒绝 6. 打胶完成 7. 结算确认 8 确认完成 9. 更新结算状态 ;
    @ApiModelProperty(value = "0: 待接订单 1：已接订单 2. 待施工订单  3 施工中订单(已签到) 4. 安装班组完成  5. 打胶售后待接订单  6 打胶售后施工中订单 7. 打胶售后施工完成订单  8. 结算待确认订单 9 已结算完成")
    @TableField(exist = false)
    private Integer orderStatus; // 0: 待接订单 1：已接订单 2. 待施工订单  3 施工中订单(已签到) 4. 安装班组完成  5. 打胶售后待接订单  6 打胶售后施工中订单 7. 打胶售后施工完成订单  8. 结算待确认订单 9 已结算完成
    @ApiModelProperty(value = "安装班组施工状态 1 确定人员 2. 人员签到 3. 查损核数 4. 洞口复测 5. 固定方式 6. 玻璃执手 7. 人走场清 8. 告知售后")
    @TableField(exist = false)
    private Integer azsgStatus; // 安装班组施工状态 1 确定人员 2. 人员签到 3. 查损核数 4. 洞口复测 5. 固定方式 6. 玻璃执手 7. 人走场清 8. 告知售后
    @ApiModelProperty(value = "打胶施工状态 1.到达预约地点 2. 开始质检 3. 打胶施工 4. 指导业主正确打开门窗 5. 上传验收单")
    @TableField(exist = false)
    private Integer  djshStatus;// 打胶施工状态 1.到达预约地点 2. 开始质检 3. 打胶施工 4. 指导业主正确打开门窗 5. 上传验收单
    @ApiModelProperty(value = "删除状态0正常 :1删除")
    @TableField(exist = false)
    private Integer delFlag; // 删除状态0正常 :1删除
    @ApiModelProperty(value = "处理状态(0:待处理， 已处理)")
    @TableField(exist = false)
    private Integer state; // 处理状态(0:待处理， 已处理)
    @Dict(dictTable = "enterprise", dicText = "name", dicCode = "id")
    @TableField(exist = false)
    private String createUserId; // 创建人id
    @TableField(exist = false)
    private Integer mcschsState; // 查损核数不相符状态(0:相符 1：不相符 2. 确认)--门窗企业
    @TableField(exist = false)
    private Integer mcdkfcState; // 洞口复测不相符状态(0:相符 1：不相符 2. 确认)--门窗企业
    @TableField(exist = false)
    private Integer zkschsState; // 查损核数不相符状态(0:相符 1：不相符 2. 确认)--中控
    @TableField(exist = false)
    private Integer zkdkfcState; // 洞口复测不相符状态(0:相符 1：不相符 2. 确认)--中控
    @TableField(exist = false)
    private String azbzUserId; // 安装班组人员id
    @TableField(exist = false)
    private String djshUserId; // 打胶售后人员id
    @TableField(exist = false)
    private String azbzReason; // 安装班组拒绝原因
    @TableField(exist = false)
    private String djshReason; // 打胶售后拒绝原因、
    @TableField(exist = false)
    private String finalPrice; //  最终价格
    @TableField(exist = false)
    private String finishTime; //  最终价格
    @ApiModelProperty(value = "评价内容")
    @TableField(exist = false)
    private String evaluateContent;
    @ApiModelProperty(value = "订单对接服务评价")
    @TableField(exist = false)
    private Integer orderService;
    @ApiModelProperty(value = "安装班组服务评价")
    @TableField(exist = false)
    private Integer installService;
    @ApiModelProperty(value = "打胶服务评价")
    @TableField(exist = false)
    private Integer caulkingService;
    @TableField(exist = false)
    private Date jstime;
    @TableField(exist = false)
    private List<FileInfo> fileInfoList;
    @TableField(exist = false)
    private List<Appointment> personList;
    @TableField(exist = false)
    private String token;
    @TableField(exist = false)
    private String bzzName;
    @TableField(exist = false)
    private String bzzHead;
    @TableField(exist = false)
    private String djshName;
    @TableField(exist = false)
    private String djshHead;
    @TableField(exist = false)
    private String enterpriseName;
    @TableField(exist = false)
    private List<String> rList;
    @TableField(exist = false)
    private String gbdkPrice; // 洞口改变价格
    @TableField(exist = false)
    private String gfccPrice; // 工费拆除价格
    @TableField(exist = false)
    private String cpbyPrice; // 产品搬运超大窗吊车卸车价格
    @TableField(exist = false)
    private String wgscPrice; // 外挂纱窗价格
    @TableField(exist = false)
    private String sghjPrice; // 施工环境已装修价格
    @TableField(exist = false)
    private String totalPrice; // 总价格
    @TableField(exist = false)
    private String jsPath; //
    @TableField(exist = false)
    private String jsReason; // 结算驳回原因
    @TableField(exist = false)
    private Integer teamRead; // 组员已读 0:未读，1 已读
}
